﻿<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://schemas.datacontract.org/2004/07/Arquitetura.Model" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/Arquitetura.Model" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import namespace="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" />
  <xs:complexType name="ArrayOfAluno">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Aluno" nillable="true" type="tns:Aluno" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfAluno" nillable="true" type="tns:ArrayOfAluno" />
  <xs:complexType name="Aluno">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:PessoaFisica">
        <xs:sequence>
          <xs:element minOccurs="0" name="Mae" nillable="true" type="tns:Mae" />
          <xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" minOccurs="0" name="MaeReference" nillable="true" type="q1:EntityReferenceOfMaeA5x4B1Ym" />
          <xs:element minOccurs="0" name="Matriculas" nillable="true" type="tns:ArrayOfMatricula" />
          <xs:element minOccurs="0" name="Pai" nillable="true" type="tns:Pai" />
          <xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" minOccurs="0" name="PaiReference" nillable="true" type="q2:EntityReferenceOfPaiA5x4B1Ym" />
          <xs:element minOccurs="0" name="Prontuario" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Aluno" nillable="true" type="tns:Aluno" />
  <xs:complexType name="PessoaFisica">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Pessoa">
        <xs:sequence>
          <xs:element minOccurs="0" name="CPF" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Nome" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RG" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Sobrenome" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PessoaFisica" nillable="true" type="tns:PessoaFisica" />
  <xs:complexType name="Pessoa">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q3="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q3:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Enderecos" nillable="true" type="tns:ArrayOfEndereco" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Pessoa" nillable="true" type="tns:Pessoa" />
  <xs:complexType name="ArrayOfEndereco">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Endereco" nillable="true" type="tns:Endereco" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfEndereco" nillable="true" type="tns:ArrayOfEndereco" />
  <xs:complexType name="Endereco">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q4="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q4:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Bairro" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="CEP" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Complemento" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Logradouro" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Numero" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Pessoa" nillable="true" type="tns:Pessoa" />
          <xs:element minOccurs="0" name="PessoaReference" nillable="true" type="q4:EntityReferenceOfPessoaA5x4B1Ym" />
          <xs:element minOccurs="0" name="TipoEndereco" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Endereco" nillable="true" type="tns:Endereco" />
  <xs:complexType name="Pai">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:PessoaFisica">
        <xs:sequence>
          <xs:element minOccurs="0" name="Filhos" nillable="true" type="tns:ArrayOfAluno" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Pai" nillable="true" type="tns:Pai" />
  <xs:complexType name="Mae">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:PessoaFisica">
        <xs:sequence>
          <xs:element minOccurs="0" name="Filhos" nillable="true" type="tns:ArrayOfAluno" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Mae" nillable="true" type="tns:Mae" />
  <xs:complexType name="PessoaJuridica">
    <xs:complexContent mixed="false">
      <xs:extension base="tns:Pessoa">
        <xs:sequence>
          <xs:element minOccurs="0" name="CNPF" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="InscricaoEstadual" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="NomeFantasia" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="RazaoSocial" nillable="true" type="xs:string" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="PessoaJuridica" nillable="true" type="tns:PessoaJuridica" />
  <xs:complexType name="ArrayOfMatricula">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Matricula" nillable="true" type="tns:Matricula" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfMatricula" nillable="true" type="tns:ArrayOfMatricula" />
  <xs:complexType name="Matricula">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q5="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q5:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Aluno" nillable="true" type="tns:Aluno" />
          <xs:element minOccurs="0" name="AlunoReference" nillable="true" type="q5:EntityReferenceOfAlunoA5x4B1Ym" />
          <xs:element minOccurs="0" name="Chamada" type="xs:int" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Turma" nillable="true" type="tns:Turma" />
          <xs:element minOccurs="0" name="TurmaReference" nillable="true" type="q5:EntityReferenceOfTurmaA5x4B1Ym" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Matricula" nillable="true" type="tns:Matricula" />
  <xs:complexType name="Turma">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q6="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q6:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Ano" type="xs:int" />
          <xs:element minOccurs="0" name="Capacidade" type="xs:int" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Matriculas" nillable="true" type="tns:ArrayOfMatricula" />
          <xs:element minOccurs="0" name="Periodo" nillable="true" type="tns:Periodo" />
          <xs:element minOccurs="0" name="PeriodoReference" nillable="true" type="q6:EntityReferenceOfPeriodoA5x4B1Ym" />
          <xs:element minOccurs="0" name="Serie" nillable="true" type="tns:Serie" />
          <xs:element minOccurs="0" name="SerieReference" nillable="true" type="q6:EntityReferenceOfSerieA5x4B1Ym" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Turma" nillable="true" type="tns:Turma" />
  <xs:complexType name="Periodo">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q7="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q7:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Turmas" nillable="true" type="tns:ArrayOfTurma" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Periodo" nillable="true" type="tns:Periodo" />
  <xs:complexType name="ArrayOfTurma">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Turma" nillable="true" type="tns:Turma" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfTurma" nillable="true" type="tns:ArrayOfTurma" />
  <xs:complexType name="Serie">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q8="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q8:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Curso" nillable="true" type="tns:Curso" />
          <xs:element minOccurs="0" name="CursoReference" nillable="true" type="q8:EntityReferenceOfCursoA5x4B1Ym" />
          <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Numero" nillable="true" type="xs:int" />
          <xs:element minOccurs="0" name="Turmas" nillable="true" type="tns:ArrayOfTurma" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Serie" nillable="true" type="tns:Serie" />
  <xs:complexType name="Curso">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q9="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q9:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Abreviacao" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Grau" nillable="true" type="tns:Grau" />
          <xs:element minOccurs="0" name="GrauReference" nillable="true" type="q9:EntityReferenceOfGrauA5x4B1Ym" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Series" nillable="true" type="tns:ArrayOfSerie" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Curso" nillable="true" type="tns:Curso" />
  <xs:complexType name="Grau">
    <xs:complexContent mixed="false">
      <xs:extension xmlns:q10="http://schemas.datacontract.org/2004/07/System.Data.Objects.DataClasses" base="q10:EntityObject">
        <xs:sequence>
          <xs:element minOccurs="0" name="Cursos" nillable="true" type="tns:ArrayOfCurso" />
          <xs:element minOccurs="0" name="Descricao" nillable="true" type="xs:string" />
          <xs:element minOccurs="0" name="Id" type="xs:int" />
          <xs:element minOccurs="0" name="Numero" type="xs:int" />
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>
  <xs:element name="Grau" nillable="true" type="tns:Grau" />
  <xs:complexType name="ArrayOfCurso">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Curso" nillable="true" type="tns:Curso" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfCurso" nillable="true" type="tns:ArrayOfCurso" />
  <xs:complexType name="ArrayOfSerie">
    <xs:sequence>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="Serie" nillable="true" type="tns:Serie" />
    </xs:sequence>
  </xs:complexType>
  <xs:element name="ArrayOfSerie" nillable="true" type="tns:ArrayOfSerie" />
</xs:schema>